Apparatus, system, and method for volume-level restoration of cluster server data

ABSTRACT

An apparatus, system, and method are disclosed for restoring cluster server data at a volume level. A setup module opens at least one source volume of a cluster server for a volume-level restore, flushes each buffer for the at least one source volume, closes the at least one source volume, disables file system checks for the cluster disks, saves disk signatures of the cluster disks, and disables device-level checks for the cluster disks. A copy module copies data with a volume-level restore from the at least one snapshot volume to the at least one source volume. A reset module rewrites the saved disk signatures to the cluster disks, re-enables the device-level checks for the cluster disks, and resets at least one volume attribute on the at least one source volume.

BACKGROUND OF THE INVENTION

1. Field of the Invention

This invention relates to restoring data and more particularly relatesto restoring cluster server data at a volume-level.

2. Description of the Related Art

A data processing system may employ cluster servers for critical dataprocessing tasks. Two or more servers may be configured as clusterservers. Each cluster server may monitor other cluster servers. If afirst cluster server hangs or otherwise is unable to complete one ormore tasks, a second cluster server may identify the problem and resumeprocessing functions for the first cluster server.

Cluster servers often employ one or more cluster disks. The clusterdisks may store data for each of the cluster servers. The storagecapacity of the cluster disks may be divided among one or more logicalvolumes. The cluster disk logical volumes are referred to herein assource volumes.

The source volumes and cluster disks may employ a number of data locksand other safeguards to assure that data used by a first cluster serveris not overwritten by a second cluster server. As a result, theplurality of cluster servers may share the source volumes and thecluster disks.

Because cluster servers typically perform critical tasks, a snapshot ofthe data stored on the source volumes is often backed up to one or moresnapshot volumes. A plurality of snapshot instances may be stored on thesnapshot volumes.

Occasionally, the cluster servers may require that data from a snapshotinstance be restored to the source volumes. Unfortunately, because ofthe large numbers of discrete files and the large amount of data thatmust be restored, recovering data from the snapshot instance may be alengthy process. Yet because of the critical nature of the tasksperformed by the cluster server, a lengthy recovery process may beunacceptable.

SUMMARY OF THE INVENTION

From the foregoing discussion, there is a need for an apparatus, system,and method that restores cluster server data at volume level.Beneficially, such an apparatus, system, and method would allow clusterserver data to be rapidly restored, minimizing service outages.

The present invention has been developed in response to the presentstate of the art, and in particular, in response to the problems andneeds in the art that have not yet been fully solved by currentlyavailable data restoration methods. Accordingly, the present inventionhas been developed to provide an apparatus, system, and method forrestoring cluster server data that overcome many or all of theabove-discussed shortcomings in the art.

The apparatus to restore cluster server data at a volume level isprovided with a plurality of modules configured to functionally executethe steps of opening a source volume, flush each buffer, closing thesource volume, disabling file system checks, saving disk signatures,disabling device-level checks, copying data, rewriting the disksignatures, re-enabling the device-level checks, and resetting volumeattributes. These modules in the described embodiments include a setupmodule, a copy module, and a reset module.

In one embodiment, the setup module prepares an application for recoveryand directs the application to quiesce a data set of a source volume ofa cluster server. The setup module opens the source volume for avolume-level restore. In addition, the setup module flushes each bufferof the source volume and closes the source volume. The setup modulefurther disables file system checks for cluster disks associated withthe source volume, saves disk signatures of the cluster disks, anddisables device-level checks for the cluster disks.

The copy module copies data with a volume-level restore from a snapshotvolume to the source volume. The reset module rewrites the saved disksignatures to the cluster disks. In addition, the reset modulere-enables the device-level checks for the cluster disks and resets atleast one volume attribute on the at least one source volume.

In one embodiment, the reset module unmounts the source volume, mountsthe source volume, and re-enables the file system checks for the clusterdisks. In addition, the reset module may direct the application to run arecovery operation. The apparatus allows the data to be rapidly restoredto the source volume, minimizing the time that the needed data is notavailable on the source volume.

A system of the present invention is also presented to restore clusterserver data. The system may be embodied in a cluster server. Inparticular, the system, in one embodiment, includes a plurality ofcluster servers, cluster disks, snapshot disks, and a computer.

The plurality of cluster servers may execute tasks in a clusterenvironment. The cluster disks include at least one source volume thatstores data for the cluster servers. The snapshot disks include at leastone volume that stores a backup instance of the at least one sourcevolume.

The computer may be a cluster server of the plurality of clusterservers. The computer includes a setup module, a copy module, and areset module. The setup module opens the at least one source volume of acluster server for a volume-level restore, flushes each buffer for theat least one source volume, closes the at least one source volume,disables file system checks for the cluster disks, saves disk signaturesof the cluster disks, and disables device-level checks for the clusterdisks.

The copy module copies data with a volume-level restore from W at leastone snapshot volume to the at least one source volume. The reset modulerewrites the saved disk signatures to the cluster disks, re-enables thedevice-level checks for the at cluster disks, and resets at least onevolume attribute on the at least one source volume. The system restoresthe data to the at least one source volume from the at least onesnapshot volume.

A method of the present invention is also presented for restoringcluster server data. The method in the disclosed embodimentssubstantially includes the steps to carry out the functions presentedabove with respect to the operation of the described apparatus andsystem. In one embodiment, the method includes opening a source volume,flush each buffer, closing the source volume, disabling file systemchecks, saving disk signatures, disabling device-level checks, copyingdata, rewriting the disk signatures, re-enabling the device-levelchecks, and resetting volume attributes.

A setup module opens the at least one source volume of a cluster serverfor a volume-level restore, flushes each buffer for at least one sourcevolume, closes the at least one source volume, disables file systemchecks for the cluster disks, saves disk signatures of the clusterdisks, and disables device-level checks for the cluster disks. A copymodule copies data with a volume-level restore from the at least onesnapshot volume to the at least one source volume. A reset modulerewrites the saved disk signatures to the cluster disks, re-enables thedevice-level checks for the cluster disks, and resets at least onevolume attribute on the at least one source volume. The method rapidlyrestores the data from the at least one snapshot volume to the at leastone source volume.

References throughout this specification to features, advantages, orsimilar language does not imply that all of the features and advantagesthat may be realized with the present invention should be or in anysingle embodiment of the invention. Rather, language referring to thefeatures and advantages is understood to mean that a specific feature,advantage, or characteristic described in connection with an embodimentis included in the at least one embodiment of the present invention.Thus, discussion of the features and advantages, and similar language,throughout this specification may, but do not necessarily, refer to thesame embodiment.

The embodiment of the present invention restores cluster server data. Inaddition, the present invention may reduce the time required to restorethe data, shortening the time the data is unavailable to the clusterservers. Furthermore, the described features, advantages, andcharacteristics of the invention may be combined in any suitable mannerin one or more embodiments. One skilled in the relevant art willrecognize that the invention may be practiced without one or more of thespecific features or advantages of a particular embodiment. In otherinstances, additional features and advantages may be recognized incertain embodiments that may not be present in all embodiments of theinvention.

These features and advantages of the present invention will become morefully apparent from the following description and appended claims, ormay be learned by the practice of the invention as set forthhereinafter.

BRIEF DESCRIPTION OF THE DRAWINGS

In order that the advantages of the invention will be readilyunderstood, a more particular description of the invention brieflydescribed above will be rendered by reference to specific embodimentsthat are illustrated in the appended drawings. Understanding that thesedrawings depict only typical embodiments of the invention and are nottherefore to be considered to be limiting of its scope, the inventionwill be described and explained with additional specificity and detailthrough the use of the accompanying drawings, in which:

FIG. 1 is a schematic block diagram illustrating one embodiment of acluster server system in accordance with the present invention;

FIG. 2 is a schematic block diagram illustrating one embodiment of acluster server apparatus of the present invention;

FIGS. 3 and 4 are a schematic flow chart diagram illustrating oneembodiment of a data restoration method of the present invention;

FIG. 5 is a schematic block diagram illustrating one embodiment ofsaving disk signatures of the present invention;

FIG. 6 is a schematic block diagram illustrating one embodiment ofrestored data of the present invention; and

FIG. 7 is a schematic block diagram illustrating one embodiment ofrewriting disk signatures of the present invention.

DETAILED DESCRIPTION OF THE INVENTION

Many of the functional units described in this specification have beenlabeled as modules, in order to more particularly emphasize theirimplementation independence. For example, a module may be implemented asa hardware circuit comprising custom VLSI circuits or gate arrays,off-the-shelf semiconductors such as logic chips, transistors, or otherdiscrete components. A module may also be implemented in programmablehardware devices such as field programmable gate arrays, programmablearray logic, programmable logic devices or the like.

Modules may also be implemented in software for execution by varioustypes of processors. An identified module of executable code may, forinstance, comprise one or more physical or logical blocks of computerinstructions, which may, for instance, be organized as an object,procedure, or function. Nevertheless, the executables of an identifiedmodule need not be physically located together, but may comprisedisparate instructions stored in different locations which, when joinedlogically together, comprise the module and achieve the stated purposefor the module.

Indeed, a module of executable code may be a single instruction, or manyinstructions, and may even be distributed over several different codesegments, among different programs, and across several memory devices.Similarly, operational data may be identified and illustrated hereinwithin the modules, and may be embodied in any suitable form andorganized within any suitable type of data structure. The operationaldata may be collected as a single data set, or may be distributed overdifferent locations including different storage devices.

Reference throughout this specification to “one embodiment,” “anembodiment,” or similar language means that a particular feature,structure, or characteristics described in connection with theembodiment is included in at least one embodiment of the presentinvention. Thus, appearances of the phrases “in one embodiment,” “in anembodiment,” and similar language throughout this specification may, butdo not necessarily, all refer to the same embodiment.

Furthermore, the described features, structures, or characteristics ofthe invention may be combined in any suitable manner in one or moreembodiments. In the following description, numerous specific details areprovided, such as examples of programming, software modules, userselections, network transactions, database queries, database structures,hardware modules, hardware circuits, hardware chips, etc., to provide athorough understanding of embodiments of the invention. One skilled inthe relevant art will recognize, however, that the invention may bepracticed without one or more of the specific details, or with othermethods, components, materials, and so forth. In other instances,well-known structures, materials, or operations are not shown ordescribed in detail to avoid obscuring aspects of the invention.

FIG. 1 is a schematic block diagram illustrating one embodiment of acluster server system 100 in accordance with the present invention. Thecluster server system 100 includes one or more hosts 110, a clusterconnection 115, one or more cluster servers 120, cluster disks 125, andsnapshot disks 130. The cluster disks 125 and snapshot disks 130 arerepresentative of one or more hard disk drives configured as logicalunit numbers (LUNS). One of skill in the art will recognize that thecluster disks 125 and snapshot disks 130 may also be configured as oneor more optical storage devices, holographic storage devices,semiconductor storage devices, and the like. Although for simplicity twocluster servers 120 and one cluster connection 115 are shown, any numberof cluster servers 120 and cluster connections 115 may be employed.

In one embodiment, the cluster servers 120 execute MICROSOFT® ClusterServer. The operating system may include Volume Shadow Copy Serviceapplication program interfaces as are well known to those of skill inthe art.

The cluster servers 120 may provide computing services for the hosts110. For example, the cluster servers 120 may execute tasks includingapplication programs, data managements programs, and the like. Thecluster servers 120 work closely together.

The hosts 110 may be computer workstations, servers, mainframecomputers, and the like. The hosts 110 may communicate with the clusterservers 120 through the cluster connection 115. The cluster connection115 may be a router, a server, or the like. The cluster servers 120 mayalso communicate through a private cluster connection 135.

The cluster servers 120 may provide high availability computingservices. Thus if a first cluster server 120 a is unavailable, a secondcluster server 120 b may be used in place of the first cluster server120 a. The cluster servers 120 may also work together to balance dataprocessing tasks among the cluster servers 120. Thus if the firstcluster server 120 a is processing too many tasks, some tasks may beshifted to the second cluster server 120 b. The cluster servers 120 mayalso monitor each other, so that if the first cluster server 120 afails, the second cluster server 120 b may assume the computing tasks ofthe first cluster server 120 a.

The cluster servers 120 may each store data to the cluster disks 125,facilitating the sharing of tasks among the cluster servers 120. Thecluster disks 125 may be organized as one or more source volumes. Thecluster server system 100 may employ locks and other logicalrestrictions to prevent the first cluster server 120 a from overwritingdata of the second cluster server 120b.

Because cluster server systems 100 typically process important tasks,the data of the cluster disks 125 may be backed up to the snapshot disks130. The snapshot disks 130 may also be organized as one or moresnapshot volumes. If data of one or more source volumes is ever lostand/or corrupted, a backup instance of the data may be recovered fromthe snapshot volumes.

In one embodiment, the cluster disks 125 and/or the snapshot disks 130are organized as a storage area network (SAN). Alternatively, thecluster disks 125 and the snapshot disks 130 may be organized within asingle SAN.

Unfortunately, copying a large amount of data and large number of filesfrom the snapshot disks 130 to the cluster disks 125 may require anexcessive time interval. As a result, the cluster server system 100 maybe unable to provide computing services or provide computing services ata reduced level. The present invention efficiently restores the datafrom the snapshot volumes to the source volumes.

FIG. 2 is a schematic block diagram illustrating one embodiment of acluster server apparatus 200 of the present invention. The apparatus 200may be embodied in one or more computer program products executing on acluster server 120 of FIG. 1. The description of the apparatus 200refers to elements of FIG. 1, like numbers referring to like elements.

In one embodiment, the setup module 205 prepares an application forrecovery. The application executes on a cluster server 120. The setupmodule 205 further directs the application to quiesce a data set of asource volume of a cluster server 120. The source volume may reside onthe cluster disks 125.

The setup module 205 opens the source volume. In addition, the setupmodule 205 flushes each buffer of the source volume and closes thesource volume. The buffers may temporarily store data written to thesource volume and/or read from the source volume. The setup module 205further disables file system checks for the cluster disks 125 associatedwith the source volume. In addition, the setup module 205 saves disksignatures of the cluster disks 125 and disables device-level checks forthe cluster disks 125 as will be described hereafter.

The copy module 210 copies data with a volume-level restore from asnapshot volume to the source volume. The reset module 215 rewrites thesaved disk signatures to the cluster disks 125. In addition, the resetmodule 215 re-enables the device-level checks for the cluster disks 125and resets at least one volume attribute on the at least one sourcevolume.

In one embodiment, the reset module 215 unmounts the source volume,mounts the source volume, and re-enables the file system checks for thecluster disks 125. In addition, the reset module may direct theapplication to run a recovery operation. The cluster server apparatus200 allows the data to be restored to the source volume.

The schematic flow chart diagrams that follow are generally set forth aslogical flow chart diagrams. As such, the depicted order and labeledsteps are indicative of one embodiment of the presented method. Othersteps and methods may be conceived that are equivalent in function,logic, or effect to one or more steps, or portions thereof, of theillustrated method. Additionally, the format and the symbols employedare provided to explain the logical steps of the method and areunderstood not to limit the scope of the method. Although various arrowtypes and line types may be employed in the flow chart diagrams, theyare understood not to limit the scope of the corresponding method.Indeed, some arrows or other connectors may be used to indicate only thelogical flow of the method. For instance, an arrow may indicate awaiting or monitoring period of unspecified duration between enumeratedsteps of the depicted method. Additionally, the order in which aparticular method occurs may or may not strictly adhere to the order ofthe corresponding steps shown.

FIGS. 3 and 4 are a schematic flow chart diagram illustrating oneembodiment of a data restoration method 300 of the present invention.The data restoration method 300 substantially includes the steps tocarry out the functions presented above with respect to the operation ofthe described apparatus and system of FIGS. 1 and 2. In one embodiment,the method is implemented with a computer program product comprising acomputer readable medium having a computer readable program. A computersuch as a cluster server 120 may execute the computer readable program.

The data restoration method 300 begins, and in one embodiment, the copymodule 210 backs up 302 data from the at least one source volume to theat least one snapshot volume. In a certain embodiment, there is acorresponding snapshot volume for each source volume. The copy module210 may regularly back up 302 data according to the policy. For example,the copy module 210 may back up 302 data hourly.

The setup module 205 may prepare 305 an application for recovery. Theapplication may be a database application program, a web servicesapplication, and the like. In one embodiment, the application isMICROSOFT® Exchange Server.

The setup module 205 further directs 310 the application to quiesce adata set of the at least one source volume of a cluster server 120. Inaddition, the setup module 205 may dismount a data set used by theapplication and residing on a source volume.

The setup module 205 opens 315 the at least one source volume. Forexample, the source volume may be configured to receive data from the atleast one snapshot volume, wherein the data from the snapshot volume mayoverwrite the current data of the at least one source volume.

The setup module 205 flushes 320 each buffer of the at least one sourcevolume. The buffers may be configured as a semiconductor memory, areserved section of a hard disk drive, and the like. The opening 315 ofthe at least one source volume may enable the flushing 320 of thebuffers. In addition, the setup module 205 closes 322 the at least onesource volume.

The setup module 205 further disables 325 file system checks for thecluster disks 125 associated with the source volume. The file systemchecks may determine if the cluster disks 125 are functioning. In oneembodiment, the setup module 205 disables 325 the file system checks byplacing the cluster disks 125 in a normal cluster maintenance mode, suchthat functions such as “looksalive,” “isalive,” and the like cannot beused. The setup module 205 further saves 330 disk signatures of thecluster disks 125 as will be described hereafter.

Turning now to FIG. 4, the setup module 205 disables 335 device-levelchecks for the cluster disks 125. In one embodiment, the setup module205 disables 335 the device-level checks by placing the cluster disks125 in an extended maintenance mode. With the cluster disks 125 inextended maintenance mode, a cluster server 120 may be unable to writeto the cluster disks 125.

The copy module 210 copies 340 data with a volume-level restore from theat least one snapshot volume to the at least one source volume. In oneembodiment, the copy module 210 overwrites each source volume with thedata of a snapshot volume. The copy module 210 may rapidly copy 340 thedata using one or more methods as is well know to those of skill in theart. In addition, in some embodiments such as an International BusinessMachines Corporation (IBM) SAN Volume Controller, IBM DS6000-series, andIBM DS8000-series, the source volumes can be used before the data copycompletes.

The reset module 215 rewrites 345 the saved disk signatures to thecluster disks 125 as will be described hereafter. In addition, the resetmodule 215 may re-enable 350 the device-level checks for the clusterdisks 125. In one embodiment, the reset module 215 re-enables 350 thedevice-level checks by removing the cluster disks 125 from the extendedmaintenance mode.

The reset module 215 further resets 355 the at least one volumeattribute on the at least one source volume. In one embodiment,resetting 355 the at least volume attribute makes the at least onesource volumes writable. The reset module 215 unmounts 360 the at leastone source volume. In addition, the reset module 215 mounts 365 the atleast one source volume. Unmounting 360 and mounting 365 the at leastone source volume may enable the cluster servers 120 to write to thesource volumes.

The reset module 215 re-enables 370 the file system checks for thecluster disks 125. In one embodiment, the reset module 215 removes thecluster disks 125 from the normal cluster maintenance mode to re-enable370 file system checks. In addition, the reset module 215 may direct 375the application to run a recovery operation. For example, the resetmodule 215 may direct 375 MICROSFT® Exchange Server to mount applicationdatabases.

The data restoration method 300 restores the cluster server data. Bypreparing the source volumes for receiving a volume-level restore, thedata restoration method 300 improves the restoration of data.

FIG. 5 is a schematic block diagram illustrating one embodiment ofsaving disk signatures 500 of the present invention. The depiction ofsaving disk signatures 500 illustrates step 330 of FIG. 3. In addition,the description of saving disk signatures 500 refers to elements ofFIGS. 1-3, like numbers referring to like elements.

The cluster disks 125 comprise disk signatures 505. The disk signatures505 identify the cluster disks 125. Each storage device of the clusterdisks 125 may have a disk signature 505. The setup module 205 saves 330the disk signatures 505 to a memory module 510. The memory module 510may be a dynamic random access memory (DRAM) residing in a clusterserver 120.

With the disk signatures 505 stored 330 to the memory module 510, thecopy module 210 may rapidly copy 340 data from the snapshot disks 130 tothe cluster disks 125. Although the disk signatures 505 may beoverwritten during the copy 340 operation, the disk signatures 505 arestill available for restoration to the cluster disks 125 as will bedescribed hereafter.

FIG. 6 is a schematic block diagram illustrating one embodiment ofrestored data 600 of the present invention. The memory module 510 is ofFIG. 5 is shown. The cluster disks 125 of FIG. 5 is also shownoverwritten with the data from the snapshot disks 130, referred toherein as cluster disks with restored data 605. The description of therestored data 600 refers to elements of FIGS. 1-5, like numbersreferring to like elements.

The cluster disks with restored data 605 include the data needed by thecluster servers 120. However, the cluster servers 120 may not access thedata as the cluster disks with restored data 605 have the disksignatures of the snapshot disks 130.

FIG. 7 is a schematic block diagram illustrating one embodiment ofrewriting disk signatures 700 of the present invention. The memorymodule 510 and cluster disks with restored data 605 of FIG. 6. Thedescription of rewriting the disk signatures 700 refers to elements ofFIGS. 1-6, like numbers referring to like elements.

The reset module 215 rewrites 345 the saved disk signatures 505 to thecluster disks with restored data 605. With the disk signatures 505, thecluster disks with restored data 605 can be accessed by the clusterservers 120, completing the restoration of cluster server data.

The present invention efficiently restores data for cluster servers 120.

The present invention may be embodied in other specific forms withoutdeparting from its spirit or essential characteristics. The describedembodiments are to be considered in all respects only as illustrativeand not restrictive. The scope of the invention is, therefore, indicatedby the appended claims rather than by the foregoing description. Allchanges which come within the meaning and range of equivalency of theclaims are to be embraced within their scope.

1. An apparatus to restore cluster server data at a volume level, theapparatus: comprising: a setup module configured to open at least onesource volume of a cluster server for a volume-level restore, flush eachbuffer for the at least one source volume, close the at least one sourcevolume, disable file system checks for cluster disks associated with theat least one source volume, save disk signatures of the cluster disks,and disable device-level checks for the cluster disks; a copy moduleconfigured to copy data with a volume-level restore from at least onesnapshot volume to the at least one source volume; and a reset moduleconfigured to rewrite the saved disk signatures to the cluster disks,re-enable the device-level checks for the cluster disks, and reset atleast one volume attribute on the at least one source volume.
 2. Theapparatus of claim 1, the setup module further configured to prepare anapplication for recovery.
 3. The apparatus of claim 2, the reset modulefurther configured to direct the application to run a recoveryoperation.
 4. The apparatus of claim 3, wherein the application isconfigured as a Microsoft® Exchange Server.
 5. The apparatus of claim 1,the setup module further configured to direct an application to quiescea data set of the at least one source volume.
 6. The apparatus of claim1, the reset module further configured to: unmount the at least onesource volume; mount the at least one source volume; and re-enable thefile system checks for the cluster disks.
 7. A computer program productcomprising a computer useable medium having a computer readable program,wherein the computer readable program when executed on a computer causesthe computer to: open at least one source volume of a cluster server fora volume-level restore; flush each buffer for the at least one sourcevolume; close the at least one source volume; disable file system checksfor cluster disks associated with the at least one source volume; savedisk signatures of the cluster disks; disable device-level checks forthe cluster disks; copy data with a volume-level restore from at leastone snapshot volume to the at least one source volume; rewrite the saveddisk signatures to the cluster disks; re-enable the device-level checksfor the cluster disks; and reset at least one volume attribute on the atleast one source volume.
 8. The computer program product of claim 7,wherein the computer readable code is further configured to cause thecomputer to prepare an application for recovery.
 9. The computer programproduct of claim 8, wherein the computer readable code is furtherconfigured to cause the computer to direct the application to quiesce adata set of the at least one source volume.
 10. The computer programproduct of claim 8, wherein the computer readable code is furtherconfigured to cause the computer to: unmount the at least one sourcevolume; mount the at least one source volume; and re-enable the filesystem checks for the cluster disks.
 11. The computer program product ofclaim 10, wherein the computer readable code is further configured tocause the computer to direct the application to run a recoveryoperation.
 12. The computer program product of claim 7, wherein thecomputer readable code is further configured to cause the computer toback up the data to the at least one snapshot volume using Volume ShadowCopy Service application program interfaces.
 13. A system to restorecluster server data at a volume level, the system comprising: aplurality of cluster servers; cluster disks comprising at least onesource volume configured to store data for the plurality of clusterservers; snapshot disks comprising at least one snapshot volumeconfigured to store a backup instance of the at least one source volume;a computer comprising a setup module configured to open the at least onesource volume for a volume-level restore, flush each buffer for the atleast one source volume, close the at least one source volume, disablefile system checks for the cluster disks, save disk signatures of thecluster disks, and disable device-level checks for the cluster disks; acopy module configured to copy data with a volume-level restore from theat least one snapshot volume to the at least one source volume; and areset module configured to rewrite the saved disk signatures to thecluster disks, re-enable the device-level checks for the cluster disks,and reset at least one volume attribute on the at least one sourcevolume.
 14. The system of claim 13, wherein the computer is configuredas a cluster server of the plurality of cluster servers.
 15. The systemof claim 13, the setup module further configured to prepare anapplication for recovery.
 16. The system of claim 13, the reset modulefurther configured to direct the application to run a recoveryoperation.
 17. The system of claim 13, the setup module furtherconfigured to direct an application to quiesce a data set of the atleast one source volume.
 18. The system of claim 13, the reset modulefurther configured to: unmount the at least one source volume; mount theat least one source volume; and re-enable the file system checks for thecluster disks.
 19. A method for deploying computer infrastructure,comprising integrating computer-readable code into a computing system,wherein the code in combination with the computing system is capable ofperforming the following: preparing an application for recovery;directing the application to quiesce a data set of at least one sourcevolume opening the at least one source volume of a cluster server for avolume level restore; flushing each buffer for the at least one sourcevolume; closing the at least one source volume; disabling file systemchecks for cluster disks associated with the at least one source volume;saving disk signatures of the cluster disks; disabling device-levelchecks for the cluster disks; copying data with a volume-level restorefrom at least one snapshot volume to the at least one source volume;rewriting the saved disk signatures to the cluster disks; re-enablingthe device-level checks for the cluster disks; resetting at least onevolume attribute on the at least one source volume; unmounting the atleast one source volume; mounting the at least one source volume;re-enabling the file system checks for the cluster disks; and directingthe application to run a recovery operation
 20. The method of claim 19,wherein the method comprises backing up the data to the at least onesnapshot volume using Volume Shadow Copy Service application programinterfaces.